Skip to content

feat(scripts): pretty DMG layout — 128px icons centered in 700×420 window#60

Merged
oratis merged 1 commit into
mainfrom
feat/pretty-dmg-layout
May 28, 2026
Merged

feat(scripts): pretty DMG layout — 128px icons centered in 700×420 window#60
oratis merged 1 commit into
mainfrom
feat/pretty-dmg-layout

Conversation

@oratis

@oratis oratis commented May 28, 2026

Copy link
Copy Markdown
Owner

make-dmg.sh builds DMG via hdiutil + AppleScript so we can control iconSize (Tauri config doesn't expose it). Window 700×420, 128 px icons, centered at (200, 200) + (500, 200). sign-and-notarize.sh step 7 now delegates to it. Verified: Apple-accepted DMG with persistent layout.

…ndow

Tauri's tauri.conf.json dmg config only supports windowSize + positions,
not iconSize. We need bigger icons + a proper centered layout, so I built
a custom DMG builder using hdiutil + AppleScript Finder customization.

  · scripts/make-dmg.sh (NEW, ~140 lines)
    - Stage signed .app + /Applications symlink in tmp dir
    - hdiutil create UDRW with extra headroom (+20 MB so Finder has space
      for .DS_Store + .fseventsd)
    - Mount + osascript: iconView, no toolbar, 128 px icons, 700×420
      window, icons at (200, 200) and (500, 200)
    - Wait 5+2 s for Finder to flush .DS_Store (prior bug: detached too
      early → layout reverted on open)
    - Detach RW DMG → convert to UDZO with zlib-level=9
    - Auto-cleans stale "/Volumes/DeepCode N" mounts from prior runs
    - Verifies .DS_Store ended up on the volume before detach

  · scripts/sign-and-notarize.sh — step 7 now calls make-dmg.sh instead
    of the inline hdiutil create. Cleaner separation: pretty layout
    isolated, sign+notarize flow unchanged.

End-to-end verified on a real signed+notarized DMG:
  · Apple notarization: Accepted ✓
  · Stapled ✓
  · spctl: accepted, source=Notarized Developer ID ✓
  · Open DMG: icons centered, big, layout persists across remounts

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@oratis oratis merged commit ed13cd5 into main May 28, 2026
@oratis oratis deleted the feat/pretty-dmg-layout branch May 28, 2026 10:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant